Roztržení obrazu
Roztržení obrazu (anglicky screen tearing) je v informatice označení pro viditelnou vadu zobrazení, kdy je obraz v jednom nebo více místech vodorovně posunut („roztržen“).[1]
Podstata problému
[editovat | editovat zdroj]Roztržení obrazu je vada, která je viditelná na monitoru počítače, při které zobrazovací zařízení současně zobrazuje informaci ze dvou nebo více snímků najednou. Za běžné situace je z paměti počítače periodicky čtena informace o obraze a přitom je odesílána do monitoru, který ji ve stejném rytmu vykresluje (obnovovací frekvence, anglicky refresh rate).
Defekt nastane, když není monitor (zobrazovací zařízení) v synchronizaci s grafickou kartou, protože grafická karta není závislá na obnovovací frekvenci monitoru. Grafická karta tudíž vytvoří více snímků za sekundu než je Video Controller (přenášející data a informace z karty do monitoru) schopný přenést na obrazovku, takže nastane situace kdy Video Controller přečte z paměti část jednoho snímku a v té chvíli je do paměti nakopírován další snímek, takže dál už je čten tento následující. Na monitoru nastane vizuální defekt, který můžeme rozpoznat například tak, že je kus snímku posunut oproti předešlému snímku o několik milimetrů.
K roztržení obrazu dochází při hraní her nebo sledování videa. Při hraní her je to v situaci, kdy je počet vytvářených snímků vyšší, než je frekvence zobrazování snímků na monitoru, takže je snímek na monitoru složen z více fragmentů snímků, které vytvořila grafická karta. Při sledování videa je to v případě, že jsou jednotlivé snímky videa do paměti grafické karty kopírovány v jiném rytmu, než jsou odesílány do monitoru.
Odstranění problému
[editovat | editovat zdroj]Vadu roztržení obrazu lze odstranit tak, že je synchronizováno vytváření snímků v paměti s odesíláním do monitoru. Nový snímek je do paměti nahrán až po úplném vykreslení předchozího snímku, avšak ještě před započetím vykreslování následujícího snímku (v době tzv. zatmívacího impulzu, anglicky vertical blanking interval, tzv. vsync). Přesný vhodný okamžik pro tuto operaci sděluje řídícímu programu Video Controller (nebo provede rychlé nakopírování on sám). Druhou možností je záměna bufferů (anglicky page flipping), kdy program generuje snímky střídavě do dvou částí grafické paměti a Video Controller obě části paměti pravidelně střídá.
Pokud má grafická karta dva výstupy a dva Video Controllery, lze synchronizaci (a tím odstranění trhání obrazu) obvykle zajistit jen na jednom výstupu. Proto je například při promítání filmů z počítače na externí televizi lepší mít zapnut při spuštění programu pro přehrávání filmů pouze výstup na televizi a nepoužívat duplikovaný výstup (stejný obraz na displeji počítače i na televizi).
Reference
[editovat | editovat zdroj]- ↑ How to fight tearing. http://www.virtualdub.org [online]. 2005-10-31 [cit. 2015-05-19]. Dostupné v archivu pořízeném dne 2015-05-30.